//
//  GSDKComplatform.h
//  GameSDK
//
//  Created by Johnny on 2017/7/28.
//  Copyright © 2017年 Johnny. All rights reserved.
//

#import <Foundation/Foundation.h>
#import <UIKit/UIKit.h>

#define GSDKINITCONFIGURE [GSDKInitConfigure shared]
#define GSDKCOMPLATFORM [GSDKComplatform shared]

typedef enum _GSDK_LANGUAGE {
    GSDK_LANGUAGE_EN = 1000,                    //英语
    GSDK_LANGUAGE_CN_HANS,                      //简体中文
} _GSDK_LANGUAGE;

@interface GSDKInitConfigure : NSObject
@property (nonatomic, copy) NSString * gid;              //游戏id
@property (nonatomic, copy) NSString * appKey;           //游戏appkey
@property (nonatomic, copy) NSString * version;          //游戏版本号
@property (nonatomic, copy) NSString * versionName;      //游戏版本名字

/**
 初始化游戏配置类
 */
+ (GSDKInitConfigure *)shared;

/**
 设置SDK语言，默认是英语

 @param language sdk语言
 */
- (void)setSDKLanguage:(_GSDK_LANGUAGE)language;

/**
 如果自动获取不到游戏的ViewController，就手动添加游戏的ViewController
 
 @param viewController RootViewController
 */
- (void)setRootViewController:(id)viewController;

/**
 显示loading界面
 */
- (void)showLoadingView;

/**
 设置微信第三方登录 (功能未开放)

 @param WXAppId 微信开发者ID
 @param WXsecret 微信密钥
 */
- (void)setWXAppId:(NSString *)WXAppId wxSecret:(NSString *)WXsecret;

/**
 初始化第三方登录

 @param application The application as passed to [UIApplicationDelegate application:didFinishLaunchingWithOptions:].
 @param launchOptions The launchOptions as passed to [UIApplicationDelegate application:didFinishLaunchingWithOptions:].
 */
- (void)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions;

@end


@interface GSDKComplatform : NSObject
/**
 初始化SDK接口类
 */
+ (GSDKComplatform *)shared;

/**
 显示悬浮按钮
 */
- (void)showSuspensionToolBar;

/**
 隐藏悬浮按钮
 */
- (void)hideSuspensionToolBar;


/**
 Call this method from the [UIApplicationDelegate application:openURL:sourceApplication:annotation:] method
 of the AppDelegate for your app. It should be invoked for the proper processing of responses during interaction

 @param application The application as passed to [UIApplicationDelegate application:openURL:sourceApplication:annotation:].
 @param url The URL as passed to [UIApplicationDelegate application:openURL:sourceApplication:annotation:].
 @param sourceApplication The sourceApplication as passed to [UIApplicationDelegate application:openURL:sourceApplication:annotation:].
 @param annotation The annotation as passed to [UIApplicationDelegate application:openURL:sourceApplication:annotation:].
 @return return NO if the application can't open for some reason
 */
- (BOOL)application:(UIApplication *)application
            openURL:(NSURL *)url
  sourceApplication:(NSString *)sourceApplication
         annotation:(id)annotation;


@end
